Digital data communications systems are commonly used to transmit and/or receive data between remote transmitting and receiving locations. A central facet of any data communications system is the reliability and integrity of the data which is being communicated. Ideally, the data which is being transmitted from the transmitting location should be identical to the data which is being received at the receiving location. Practically however, the data which is received at the receiving location has oftentimes been corrupted with respect to the original data that was transmitted from the transmitting location. Such data communication errors may be attributed in part to one or more of the transmission equipment, the transmission medium or the receiving equipment. With respect to the transmission medium, these types of data errors are usually attributed to the less than ideal conditions associated with the particular transmission medium.
For example, in the case of wireless communication systems, the transmission medium, which is typically air, often suffers from atmospheric and othere effects that tend to degrade the data being transmitted . Some of these non-ideal conditions may be modeled and taken into account in order to compensate for and thereby reduce or possibly eliminate any deleterious effects resulting therefrom. In this respect, it is generally known that signal attenuation is a function of the distance that the data signal must propagate through the atmosphere. Thus, it is possible to design a wireless communications system which is capable of transmitting a data signal sufficiently robust such that in spite of known distance-dependent atmospheric attenuation, the data signals at the receiving location can be properly and accurately received. Other types of non-idealities associated with an air or atmospheric transmission medium are often highly random events which may not be modeled a priori and thus may not be compensated for or eliminated.
The transmission of data over interconnecting wires also suffers from several noise and attenuation phenomena. For example, wires exhibit frequency dependent attenuation characteristics. Additionally, wires are subject to thermal or other types of noise.
To overcome these problems, data communications systems often rely on error detection and error correction schemes, to detect the occurrence of a data error and to correct a data error, respectively. One simple form of error detection is the use of a parity bit associated with each block of data to indicate whether the particular block contains an odd or even number of 1 bits. However, this is a very simple scheme which has numerous disadvantages. It is a simple type of error detection scheme which is capable of accurately detecting up to one bit error per data block. Moreover, the use of a parity bit cannot detect the occurrence of two bit errors in a data block, since this is not even detected as a parity violation. Additionally, the use of a parity bit only detects errors; it cannot correct errors. Any time that an error is detected, the receiving location typically requests retransmission of the particular data block from the transmitting location.
One type of error correction scheme commonly used in data communications systems is the use of redundant data transmissions and a voting circuit at the receiving location. In such a system, the data being transmitted is repeated a number of times, such as five. At the receiving location, all five data blocks are received and processed by a voting circuit which compares the five received versions of each data bit and determines the bit to be a 1 or 0 based on the voting consensus. Although such a system is capable of detecting and correcting data errors, it does so at a great cost in terms of the effective data throughput or transmission rate. This is due to the fact that each data block must be repeated a number of times.
Another type of error correcting scheme is the use of encoded data, such as trellis coded modulation (TCM). Trellis coded modulation involves the use of forward error correction in a transmitter and corresponding decoding in a receiver to correct data errors which occur during transmission. The signal transmitted by the transmitter includes some form of memory or history so that a current signal is dependent on previous signals. This is achieved by limiting the choices for a next possible signal based on the current and previous signals. In this way, by knowing a sequence of previously received signals, the receiver obtains some assistance in determining the authenticity of a currently received signal. At the receiver, the sequence information of the received signals is used to select a next signal most likely to have been transmitted. Both the transmitter and receiver know the predetermined, limited choices for a next signal based on the previous signals. Thus, even if a signal gets corrupted during transmission, the receiver may be able to still identify the correct, intended signal. One type of TCM method is disclosed in U.S. Pat. No. 4,980,897 to Decker et al., entitled MULTI-CHANNEL TRELLIS ENCODER/DECODER, the contents of which are incorporated herein by reference.
The above-mentioned correction/detection schemes are examples of binary block codes. Specifically, an (n,k,d) binary block code is a set of 2.sup.k binary codewords of block length n and minimum distance d (i.e., coding distance). The transmitted data is partitioned into binary blocks of length k, then each block is mapped into a binary codeword of length n, which is then modulated and transmitted through the channel. This block code is capable of correcting up to t=(d-1)/2 errors within each codeword.
Different types of data transmission formats are susceptible to different types of attenuation and distortion. Narrowband transmission formats such as frequency shift keying (FSK) or amplitude shift keying (ASK) are somewhat immune to frequency dependent attenuation, and thus may suffer little or no distortion. However, the entire band of the narrowband signal may fall into an attenuation null and be severely attenuated. Wideband transmission formats such as spread spectrum are less susceptible to the signal degradation caused by a narrowband attenuation null. However, due to the wider bandwidth associated with a spread spectrum signal, the spread spectrum signal experiences more distortion due to frequency dependent attenuation. Thus, a conventional narrowband signaling format is susceptible to attenuation while a conventional wideband signaling format is susceptible to distortion.
Another type of signal enhancing approach is to compensate, by appropriate filtering of the received signal, for errors due to frequency dependent differences in attenuation, time delay, or both, introduced by either the transmitter, the transmission medium and/or the receiver. In this way, the deleterious effects, such as intersymbol interference which causes bit errors, are eliminated and the received signal is restored to its original level and quality. This approach is generally referred to as equalization.
In most practical cases, the channel characteristics are unknown and may vary with time. Hence, the equalizer must be updated with each new channel connection, as in the case of a voice-band modem operating in a switched network, and must also adapt the filter settings automatically to track changes in the channel with time. There are two general types of equalizers. In preset equalizers, a training sequence of data bits is transmitted and compared at the receiver with a locally generated sequence. The resulting error voltages are used to adjust the equalizer filter tap gains to optimum settings (which result in minimum distortion). In adaptive equalizers, the tap gain adjustments are derived directly from the transmitted data bits via decision directed feedback of the equalizer output errors, to minimize these output errors.
In one form of preset equalization, using a training sequence which is repeatedly transmitted from the transmitter to the receiver by way of the distorting communication channel, a set of parameters is established and used to emulate the effects of the distorting communication channel. Such a system is disclosed in U.S. Pat. No. 5,285,474 to Chow et al., entitled METHOD FOR EQUALIZING A MULTICARRIER SIGNAL IN A MULTICARRIER COMMUNICATION SYSTEM, the contents of which are incorporated herein by reference. The disclosed process is an iterative process which is repeated until a predetermined convergence condition is met. Convergence is determined by comparing the equalized received signal (using the estimated parameters) with a local replica (at the receiver) of the training sequence.
An alternative to equalization is predistortion, in which the distortive characteristics of the transmitter and/or channel are measured, and opposite, compensating distortions are introduced into the data entering the transmitter, so that the net effect at the receiver is a signal that has no net distortions, thereby eliminating the message errors introduced by the naturally occurring distortions.
In digital communication systems, such as radio systems, a major source of signal degradation or nonlinear distortion is the high power amplifier (HPA) used at the transmitter. Most high power amplifiers generally have a linear operating region (at low power) which progresses into a nonlinear region (at higher output power). In most communication systems, in order to compensate for the losses and attenuation associated with the transmission medium, the transmitter is operated at a higher power level. However, operating at the higher power level introduces nonlinearities associated with the amplifier. One approach to eliminating the nonlinearities at higher power levels is to use a higher power amplifier; however, this results in a more complex and costly circuit design. Additionally, a higher power amplifier consumes more power, generates more heat and radio frequency interference (RFI), and occupies more circuit board space. In order to use the nonlinear operating region of the amplifier, and thus avoid the need for a higher power amplifier, some type of predistortion is used to compensate for the nonlinear effects introduced by the amplifier. One such approach is presented in Georges Karam and Hikmet Sari, "A Data Predistortion Technique with Memory for QAM Radio Systems", IEEE Transactions on Communications, Vol. 39, No. 2, February 1991, the contents of which are incorporated by reference herein.
Karam and Sari describe a technique for predistorting the in-phase and quadrature components of the location of each quadrature amplitude modulated (QAM) data symbol that is input to a nonlinear power amplifier in order to compensate for the warping of the constellation by the nonlinearity, and also to compensate for the spreading of the transmitted symbols into a dispersed cluster at each ideal constellation point, caused by intersymbol interference due to filtering of each transmitted symbol within the transmitter. This filtering causes the apparent constellation coordinates of each symbol to be somewhat varied by the values of preceding and following symbols. Since the input amplitude of each pulse is thereby altered, the amount of nonlinear distortion for pulses at any ideal symbol point also varies with the values of the preceding and following symbols. If each symbol in an M-point constellation is considered to be affected by L preceding and L following symbols, i.e., by K=2L+1 symbols including itself, then each constellation point may take on M.sup.K- 1 different predistorted values. A memory must be provided to store the required predistortion for each of these values. Since the size of this memory becomes impractically large for large constellations, Karam and Sari recommend a technique in which quadrant symmetry and partitioning of the ideal symbol points into groups are used to reduce the total memory requirement. They show that significant predistortion processing gain can be achieved for up to 256-QAM (and possibly higher) modulations with reasonable memory requirements.
Although Karam and Sari's technique functions to compensate for transmitter nonlinearities, including both AM-AM (amplitude input distortions cause amplitude output distortions) and AM-PM (amplitude input distortions cause phase output distortions) conversion, it does not at all address the many types of distortions that can occur in the transmission channel and the receiver, many of which are time-varying, and all of which can affect the output symbol error rate. These distortions include offset biases, in-phase/quadrature gain mismatches, lock angle errors, quad angle errors, nonlinear distortions, phase noise, multipath, interference, and crosstalk.
There are two other limitations of the Karam-Sari technique described above. First, the technique presumes that the nonlinear gain and phase characteristics of the HPA remain invariant, so they can be measured and modeled initially, and then the measured scaling coefficients can be stored in memory to be used to appropriately predistort the input data. In practice, HPA nonlinearity curves can change with time, due to the effects of component aging, voltage changes, and temperature and other environmental variations. Therefore, it is necessary to periodically check and recalibrate the HPA nonlinearity parameters. While this is possible at the originating transmitter, it is much more difficult, if not impossible, at remote repeaters and satellite transponders.
The second limitation of the Karam-Sari technique is that it requires knowledge of the in-phase and quadrature amplitudes of the symbols in the data stream at the input to the predistorter preceding the HPA. While this information is readily available at the originating transmitter, it is not so readily available at intermediate repeaters and transponders. There, the signals must first be demodulated and the in-phase and quadrature amplitudes of the symbols must be measured for input to the predistorter memory. The predistorted signals must then be remodulated for input to the HPA. These steps can add a significant penalty in added equipment size, weight, power, and cost, especially in the case of satellite transponders.